package org.pf.interfaces
{
	import Box2D.Dynamics.b2Body;
	import flash.display.Sprite;
	import org.pf.base.pfBlocks.PFController;
	import org.pf.base.pfBlocks.PFParticle;
	
	/**
	 * ...
	 * @author zeksa'
	 */
	public interface IPFController
	{
		function connectToBody(bodyName:String):b2Body
		function setTweenToBody(bodyName:String, tweenName:String):void
		function setTweenToSprite(spriteName:String, tweenName:String):void
		function removeBodyTweens(bodyName:String):void
		function removeAllAnimations():void
		function changeBackground(bckgName:String):void
		function registerController(ControllerClass:Class):void
		function retrieveController(name:String):IPFController
		function unregisterController(controllerName:String):void
		function registerParticle(ParticleClass:Class):void
		function retrieveParticle(particleName:String):PFParticle
		function unregisterParticle(particleName:String):void
		function registerLevelControllers():void
		function unregisterLevelControllers():void
		function registerLevelParticles():void
		function unregisterLevelParticles():void
	
	}

}